package com.ruoyi.enterprise.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 基本资料对象 com_kzz_base_info
 * 
 * @author ruoyi
 * @date 2024-03-27
 */
public class ComKzzBaseInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号 */
    private Long id;

    /** 转债名称 */
    @Excel(name = "转债名称")
    private String zzName;

    /** 代码 */
    @Excel(name = "代码")
    private String zzCode;

    /** 现价 */
    @Excel(name = "现价")
    private BigDecimal currentBondPricenew;

    /** 涨跌 */
    @Excel(name = "涨跌")
    private BigDecimal zzZdf;

    /** 正股代码 */
    @Excel(name = "正股代码")
    private String stockCode;

    /** 正股名称 */
    @Excel(name = "正股名称")
    private String stockName;

    /** 正股价 */
    @Excel(name = "正股价")
    private BigDecimal stockPrice;

    /** 正股涨跌 */
    @Excel(name = "正股涨跌")
    private BigDecimal stockZdf;

    /** 正股PB */
    @Excel(name = "正股PB")
    private BigDecimal pbvRatio;

    /** 转股价 */
    @Excel(name = "转股价")
    private BigDecimal transferPrice;

    /** 转股价值 */
    @Excel(name = "转股价值")
    private BigDecimal transferValue;

    /** 转股溢价率 */
    @Excel(name = "转股溢价率")
    private BigDecimal transferPremiumRatio;

    /** 开始转股日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始转股日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date transferDateF242;

    /** 纯债溢价率 */
    @Excel(name = "纯债溢价率")
    private BigDecimal zzRatio;

    /** 纯债价值 */
    @Excel(name = "纯债价值")
    private BigDecimal zzPurePriceF424F227;

    /** 期限 */
    @Excel(name = "期限")
    private Long bondExpire;

    /** 票面利率(当期) */
    @Excel(name = "票面利率(当期)")
    private BigDecimal newrateRefetence;

    /** 评级 */
    @Excel(name = "评级")
    private String rating;

    /** 每股配售额 */
    @Excel(name = "每股配售额")
    private BigDecimal firstPerPreplacing;

    /** 发行亿 */
    @Excel(name = "发行亿")
    private BigDecimal actualIssueScale;

    /** 回售触发价 */
    @Excel(name = "回售触发价")
    private BigDecimal resaleTrigPrice;

    /** 回售价 */
    @Excel(name = "回售价")
    private BigDecimal executePriceHs;

    /** 强赎价 */
    @Excel(name = "强赎价")
    private BigDecimal redeemTrigPrice;

    /** 上市日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "上市日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date securityStartDate;

    /** 到期日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "到期日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expireDate;

    /** 最新回售执行日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最新回售执行日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date executeStartDatehs;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setZzName(String zzName) 
    {
        this.zzName = zzName;
    }

    public String getZzName() 
    {
        return zzName;
    }
    public void setZzCode(String zzCode) 
    {
        this.zzCode = zzCode;
    }

    public String getZzCode() 
    {
        return zzCode;
    }
    public void setCurrentBondPricenew(BigDecimal currentBondPricenew) 
    {
        this.currentBondPricenew = currentBondPricenew;
    }

    public BigDecimal getCurrentBondPricenew() 
    {
        return currentBondPricenew;
    }
    public void setZzZdf(BigDecimal zzZdf) 
    {
        this.zzZdf = zzZdf;
    }

    public BigDecimal getZzZdf() 
    {
        return zzZdf;
    }
    public void setStockCode(String stockCode) 
    {
        this.stockCode = stockCode;
    }

    public String getStockCode() 
    {
        return stockCode;
    }
    public void setStockName(String stockName) 
    {
        this.stockName = stockName;
    }

    public String getStockName() 
    {
        return stockName;
    }
    public void setStockPrice(BigDecimal stockPrice) 
    {
        this.stockPrice = stockPrice;
    }

    public BigDecimal getStockPrice() 
    {
        return stockPrice;
    }
    public void setStockZdf(BigDecimal stockZdf) 
    {
        this.stockZdf = stockZdf;
    }

    public BigDecimal getStockZdf() 
    {
        return stockZdf;
    }
    public void setPbvRatio(BigDecimal pbvRatio) 
    {
        this.pbvRatio = pbvRatio;
    }

    public BigDecimal getPbvRatio() 
    {
        return pbvRatio;
    }
    public void setTransferPrice(BigDecimal transferPrice) 
    {
        this.transferPrice = transferPrice;
    }

    public BigDecimal getTransferPrice() 
    {
        return transferPrice;
    }
    public void setTransferValue(BigDecimal transferValue) 
    {
        this.transferValue = transferValue;
    }

    public BigDecimal getTransferValue() 
    {
        return transferValue;
    }
    public void setTransferPremiumRatio(BigDecimal transferPremiumRatio) 
    {
        this.transferPremiumRatio = transferPremiumRatio;
    }

    public BigDecimal getTransferPremiumRatio() 
    {
        return transferPremiumRatio;
    }
    public void setTransferDateF242(Date transferDateF242) 
    {
        this.transferDateF242 = transferDateF242;
    }

    public Date getTransferDateF242() 
    {
        return transferDateF242;
    }
    public void setZzRatio(BigDecimal zzRatio) 
    {
        this.zzRatio = zzRatio;
    }

    public BigDecimal getZzRatio() 
    {
        return zzRatio;
    }
    public void setZzPurePriceF424F227(BigDecimal zzPurePriceF424F227) 
    {
        this.zzPurePriceF424F227 = zzPurePriceF424F227;
    }

    public BigDecimal getZzPurePriceF424F227() 
    {
        return zzPurePriceF424F227;
    }
    public void setBondExpire(Long bondExpire) 
    {
        this.bondExpire = bondExpire;
    }

    public Long getBondExpire() 
    {
        return bondExpire;
    }
    public void setNewrateRefetence(BigDecimal newrateRefetence) 
    {
        this.newrateRefetence = newrateRefetence;
    }

    public BigDecimal getNewrateRefetence() 
    {
        return newrateRefetence;
    }
    public void setRating(String rating) 
    {
        this.rating = rating;
    }

    public String getRating() 
    {
        return rating;
    }
    public void setFirstPerPreplacing(BigDecimal firstPerPreplacing) 
    {
        this.firstPerPreplacing = firstPerPreplacing;
    }

    public BigDecimal getFirstPerPreplacing() 
    {
        return firstPerPreplacing;
    }
    public void setActualIssueScale(BigDecimal actualIssueScale) 
    {
        this.actualIssueScale = actualIssueScale;
    }

    public BigDecimal getActualIssueScale() 
    {
        return actualIssueScale;
    }
    public void setResaleTrigPrice(BigDecimal resaleTrigPrice) 
    {
        this.resaleTrigPrice = resaleTrigPrice;
    }

    public BigDecimal getResaleTrigPrice() 
    {
        return resaleTrigPrice;
    }
    public void setExecutePriceHs(BigDecimal executePriceHs) 
    {
        this.executePriceHs = executePriceHs;
    }

    public BigDecimal getExecutePriceHs() 
    {
        return executePriceHs;
    }
    public void setRedeemTrigPrice(BigDecimal redeemTrigPrice) 
    {
        this.redeemTrigPrice = redeemTrigPrice;
    }

    public BigDecimal getRedeemTrigPrice() 
    {
        return redeemTrigPrice;
    }
    public void setSecurityStartDate(Date securityStartDate) 
    {
        this.securityStartDate = securityStartDate;
    }

    public Date getSecurityStartDate() 
    {
        return securityStartDate;
    }
    public void setExpireDate(Date expireDate) 
    {
        this.expireDate = expireDate;
    }

    public Date getExpireDate() 
    {
        return expireDate;
    }
    public void setExecuteStartDatehs(Date executeStartDatehs) 
    {
        this.executeStartDatehs = executeStartDatehs;
    }

    public Date getExecuteStartDatehs() 
    {
        return executeStartDatehs;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("zzName", getZzName())
            .append("zzCode", getZzCode())
            .append("currentBondPricenew", getCurrentBondPricenew())
            .append("zzZdf", getZzZdf())
            .append("stockCode", getStockCode())
            .append("stockName", getStockName())
            .append("stockPrice", getStockPrice())
            .append("stockZdf", getStockZdf())
            .append("pbvRatio", getPbvRatio())
            .append("transferPrice", getTransferPrice())
            .append("transferValue", getTransferValue())
            .append("transferPremiumRatio", getTransferPremiumRatio())
            .append("transferDateF242", getTransferDateF242())
            .append("zzRatio", getZzRatio())
            .append("zzPurePriceF424F227", getZzPurePriceF424F227())
            .append("bondExpire", getBondExpire())
            .append("newrateRefetence", getNewrateRefetence())
            .append("rating", getRating())
            .append("firstPerPreplacing", getFirstPerPreplacing())
            .append("actualIssueScale", getActualIssueScale())
            .append("resaleTrigPrice", getResaleTrigPrice())
            .append("executePriceHs", getExecutePriceHs())
            .append("redeemTrigPrice", getRedeemTrigPrice())
            .append("securityStartDate", getSecurityStartDate())
            .append("expireDate", getExpireDate())
            .append("executeStartDatehs", getExecuteStartDatehs())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
